﻿using YNTK.Common.Const;
using YNTK.Common.Entity;
using SqlSugar;

namespace YNTK.System.Entitys.Permission
{
    /// <summary>
    /// 机构信息基类
    /// </summary>
    [SugarTable("base_mechanisms")]
    [Tenant(ClaimConst.TENANT_ID)]
    public class MechanismEntity: CLDEntityBase
    {
        /// <summary>
        /// 所属组织id
        /// </summary>
        [SugarColumn(ColumnName = "F_OrganizeId", ColumnDescription = "所属组织id")]
        public string OrganizeId { get; set; }

        /// <summary>
        /// 机构上级
        /// </summary>
        [SugarColumn(ColumnName = "F_ParentId")]
        public string ParentId { get; set; }

        /// <summary>
        /// 机构类型(0.分支机构 1.部门 2.岗位 3.职位 4.职务)
        /// </summary>
        [SugarColumn(ColumnName = "F_Type")]
        public int Type { get; set; }

        /// <summary>
        /// 机构编码
        /// </summary>
        [SugarColumn(ColumnName = "F_Code")]
        public string Code { get; set; }

        /// <summary>
        /// 机构名称
        /// </summary>
        [SugarColumn(ColumnName = "F_Name")]
        public string Name { get; set; }

        /// <summary>
        /// 机构主管id
        /// </summary>
        [SugarColumn(ColumnName = "F_ManagerId")]
        public string ManagerId { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        [SugarColumn(ColumnName = "F_Description")]
        public string Description { get; set; }

        /// <summary>
        /// 职责
        /// </summary>
        [SugarColumn(ColumnName = "F_Responsibility")]
        public string Responsibility { get; set; }

        /// <summary>
        /// 职责,岗位说明书文件存储路径
        /// </summary>
        [SugarColumn(ColumnName = "F_ResponsibilityFilePath")]
        public string ResponsibilityFilePath { get; set; }

        /// <summary>
        /// 目标
        /// </summary>
        [SugarColumn(ColumnName = "F_Target")]
        public string Target { get; set; }

        /// <summary>
        /// 目标,完成情况统计文件存储路径
        /// </summary>
        [SugarColumn(ColumnName = "F_TargetFilePath")]
        public string TargetFilePath { get; set; }

        /// <summary>
        /// 排序码
        /// </summary>
        [SugarColumn(ColumnName = "F_SortCode")]
        public long? SortCode { get; set; }

        /// <summary>
        /// 定置定位文件服务器存储路径
        /// </summary>
        [SugarColumn(ColumnName = "F_OrientationFilePath")]
        public string OrientationFilePath { get; set; }
    }
}
